联想个人云存储T1 原生固件获取root&安装docker |
您所在的位置:网站首页 › 联想个人云t2 pro › 联想个人云存储T1 原生固件获取root&安装docker |
联想个人云存储T1 原生固件获取root&安装docker
2022-07-12 14:52:13
29点赞
178收藏
25评论
偶然从海鲜市场得到联想T1(280.00包邮),就开始想着怎么折腾。其实,本人已经有很多的群晖,两白一黑,两白一主一备(无奈运气不是很好,坏过2块的硬盘),一黑挂pt。参考了张大妈家的几篇文章,大概的办法,一是硬改刷黑群,一个是原生固件装docker。硬改的物件都准备好了,无奈搭不上线,最关键的部分是u-boot的生成。 原生固件装docker呢,可能是我眼拙,不太理解现在的网络语言,愣是找不到链接(当然,不耻下问也能问到)。 还是自己研究吧,下面把自己的成果小结一下,比刷机要简单,而且不会提示固件更新。 一、准备工作 需要能访问raid的linux(ubuntu等),Windows其实也可以,还是linux原生支持的方便。 移动硬盘盒 可以TTL跑码的工具 二、获取原生固件root权限 1、设置账号密码 通过联想的客户端设置局域网访问账号设置,这个账号和密码一会儿会用上。(其实这个步骤不要也行,默认的admin账号密码是123456) 2、挂载硬盘 将你的硬盘从联想T1拔下拉放入移动硬盘盒(要不要关机看你,安全起见还是关机),这时候通过linux访问这个硬盘的内容。 此时打开“文件”查看是否有文件系统被直接挂载,可以访问。如有,那就跳过挂载步骤,直接访问数据即可。 运行终端(英文系统下为Terminal),在终端中使用以下命令安装mdadm: sudo -i apt-get install mdadm 使用以下命令安装lvm2以保证vgchange正常运作: apt-get install lvm2 运行以下命令覆盖常规检查重建RAID阵列: mdadm -Asf 运行以下命令挂载所有已知的卷到系统: vgchange -ay 此时应能在系统自带的“文件”中看到新挂载的卷,打开便能看到所有文件,接下来就是修改shadow文件了。 3、获取root权限 可以直接使用admin的密码123456,在挂载的硬盘找到(例如,我这边挂载到/sata)/sata/.storage/etc/shadow文件(这个文件就不解释了)编辑它。 把admin的密码密文拷贝到root下(第1个冒号和第2个冒号之间),把第3个冒号和第4个冒号的数字改为0(不改,登录会要重置密码,登录不了)。 或者,一步到位,把刚才通过APP设置的密码密文拷贝到root下,同时,第3个冒号和第4个冒号的数字改为0。 4、TTL跑码 通过TTL跑码就可以在串口下进行ssh启用,通过刚才的步骤就可以直接root账号登录控制台了。 5、启用SSH 在/opt/conf/user下生成enable_ssh文件。 touch /opt/conf/user/enable_ssh
/etc/init.d/S50dropbear start 至此,你已经可以通过SSH远程访问联想T1了,甚至还有了root权限,接下来怎么玩,凭君喜好。 三、安装docker 其实,我最主要的目标是给没有网络功能的打印机实现airprint,联想T1也内置了cups,但是被阉割过了,还是自己搞吧。搜罗了一遍,要想找到对应的ipk包(联想T1这个固件其实是openwrt的深度定制版)着实有点困难,最简单的还是docker。 1、下载docker 下载地址:https://download.docker.com/linux/static/stable/ 镜像地址:https://mirrors.aliyun.com/docker-ce/linux/static/stable/aarch64/?spm=a2c6h.25603864.0.0.654c4ccaPxer04
https://download.docker.com/linux/static/stable/aarch64/docker-20.10.9.tgz 2、上传docker压缩包 将这个压缩包不解压直接拷贝到tmp文件夹内,然后cd /tmp,进入到该目录中 3、解压 tar -zxvf docker-20.10.9.tgz
安装过程是比较暴力的,暂时也没有更好的解决方法。 /bin/cp -a /tmp/docker/* /usr/bin,这样就会把所有刚刚解压的文件拷贝到系统目录下。 然后执行dockerd,用来创建一些临时的目录。但是执行过程会失败,我们需要修改配置文件 vi /etc/docker/daemon.json 将下述文本复制进去 { "storage-driver": "vfs", "iptables": false, "data-root": "/opt/docker" } mount - o remount rw / 5、设置docker自启动 vi /etc/init.d/S60dockerd #!/bin/sh NAME=dockerd DAEMON=/usr/bin/$NAME PIDFILE=/var/run/$NAME.pid DAEMON_ARGS="" [ -r /etc/default/$NAME ] && . /etc/default/$NAME $1 do_start() { echo -n "Starting $NAME: " start-stop-daemon --start --quiet --background --make-pidfile --pidfile $PIDFILE --exec $DAEMON -- $DAEMON_ARGS && echo "OK" || echo "FAIL"} do_stop() { echo -n "Stopping $NAME: " start-stop-daemon --stop --quiet --pidfile $PIDFILE && echo "OK" || echo "FAIL"} case "$1" in start) do_start ;; stop) do_stop ;; restart) do_stop sleep 1 do_start ;; *) echo "Usage: $0 {start|stop|restart}" exit 1 esac 注:将就看吧,没想到我这初级写作者,不支持markdown。 至此,docker安装完毕。 四、安装portainerio 其实,到这一步已经是非必要的了,还是命令行来的方便,这里,顺便介绍一下。 拉取镜像 docker pull portainer/portainer 创建卷 docker volume create portainer_data 创建容器 docker run --restart=always -d --name=portainer -p 10001:9000 -v /var/run/docker.sock:/var/run/docker.sock --net=bridge -v portainer_data:/data portainer/portainer 确认容器正常运行 docker ps 在浏览器输入联想T1的IP和10001端口号,就可以了看到对应的管理页面,说明安装成功了。 有了docker命令行和web端,想怎么搞都行了。 五、总结 联想T1刷黑群晖,缺的是某大神的u-boot(下一步自己研究怎么编译),而不是动手能力。刷某大神的官改固件现阶段的问题就是会提示固件升级。在原生固件折腾一下,也能实现自己想要的,过程还是学到一些东西的。 参考了文章如下,感谢作者。 https://www.bilibili.com/read/cv15633573
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~ ![]() |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |